home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 2: Applications / Linux Cubed Series 2 - Applications.iso / editors / emacs / emacs-19.000 / emacs-19 / usr / local / info / emacs-14 < prev    next >
Encoding:
GNU Info File  |  1995-09-11  |  47.5 KB  |  1,136 lines

  1. This is Info file ../info/emacs, produced by Makeinfo-1.55 from the
  2. input file emacs.texi.
  3.  
  4. 
  5. File: emacs,  Node: Mail Headers,  Next: Mail Aliases,  Prev: Mail Format,  Up: Sending Mail
  6.  
  7. Mail Header Fields
  8. ==================
  9.  
  10.    A header field in the mail buffer starts with a field name at the
  11. beginning of a line, terminated by a colon.  Upper and lower case are
  12. equivalent in field names (and in mailing addresses also).  After the
  13. colon and optional whitespace comes the contents of the field.
  14.  
  15.    You can use any name you like for a header field, but normally people
  16. use only standard field names with accepted meanings.  Here is a table
  17. of fields commonly used in outgoing messages.
  18.  
  19. `To'
  20.      This field contains the mailing addresses to which the message is
  21.      addressed.
  22.  
  23. `Subject'
  24.      The contents of the `Subject' field should be a piece of text that
  25.      says what the message is about.  The reason `Subject' fields are
  26.      useful is that most mail-reading programs can provide a summary of
  27.      messages, listing the subject of each message but not its text.
  28.  
  29. `CC'
  30.      This field contains additional mailing addresses to send the
  31.      message to, but whose readers should not regard the message as
  32.      addressed to them.
  33.  
  34. `BCC'
  35.      This field contains additional mailing addresses to send the
  36.      message to, which should not appear in the header of the message
  37.      actually sent.  Copies sent this way are called "blind carbon
  38.      copies".
  39.  
  40.      To send a blind carbon copy of every outgoing message to yourself,
  41.      set the variable `mail-self-blind' to `t'.
  42.  
  43. `FCC'
  44.      This field contains the name of one file and directs Emacs to
  45.      append a copy of the message to that file when you send the
  46.      message.  If the file is in Rmail format, Emacs writes the message
  47.      to Rmail format; otherwise, Emacs writes the message in system
  48.      mail file format.
  49.  
  50.      To put a fixed file name as in `FCC' field each time you start
  51.      editing an outgoing message, set the variable
  52.      `mail-archive-file-name' to that file name.  Unless you remove the
  53.      `FCC' field before sending, the message will be written into that
  54.      file when it is sent.
  55.  
  56. `From'
  57.      Use the `From' field to say who you are, when the account you are
  58.      using to send the mail is not your own.  The contents of the
  59.      `From' field should be a valid mailing address, since replies will
  60.      normally go there.
  61.  
  62. `Reply-to'
  63.      Use this field to direct replies to a different address.  Most
  64.      mail-reading programs (including Rmail) automatically send replies
  65.      to the `Reply-to' address in preference to the `From' address.  By
  66.      adding a `Reply-to' field to your header, you can work around any
  67.      problems your `From' address may cause for replies.
  68.  
  69.      To put a fixed `Reply-to' address into every outgoing message, set
  70.      the variable `mail-default-reply-to' to that address (as a string).
  71.      Then `mail' initializes the message with a `Reply-to' field as
  72.      specified.  You can delete or alter that header field before you
  73.      send the message, if you wish.  When Emacs starts up, if the
  74.      environment variable `REPLYTO' is set, `mail-default-reply-to' is
  75.      initialized from that environment variable.
  76.  
  77. `In-reply-to'
  78.      This field contains a piece of text describing a message you are
  79.      replying to.  Some mail systems can use this information to
  80.      correlate related pieces of mail.  Normally this field is filled
  81.      in by Rmail when you reply to a message in Rmail, and you never
  82.      need to think about it (*note Rmail::.).
  83.  
  84.    The `To', `CC', `BCC' and `FCC' fields can appear any number of
  85. times, to specify many places to send the message.  The `To', `CC', and
  86. `BCC' fields can have continuation lines.  All the lines starting with
  87. whitespace, following the line on which the field starts, are
  88. considered part of the field.  For example,
  89.  
  90.      To: foo@here.net, this@there.net,
  91.        me@gnu.cambridge.mass.usa.earth.spiral3281
  92.  
  93.    When you send the message, if you didn't write a `From' field
  94. yourself, Emacs puts in one for you.  The variable `mail-from-style'
  95. controls the format:
  96.  
  97. `nil'
  98.      Just the email address, as in `king@grassland.com'.
  99.  
  100. `parens'
  101.      Both email address and full name, as in `king@grassland.com (Elvis
  102.      Parsley)'.
  103.  
  104. `angles'
  105.      Both email address and full name, as in `Elvis Parsley
  106.      <king@grassland.com>'.
  107.  
  108. 
  109. File: emacs,  Node: Mail Aliases,  Next: Mail Mode,  Prev: Mail Headers,  Up: Sending Mail
  110.  
  111. Mail Aliases
  112. ============
  113.  
  114.    You can define "mail aliases" in a file named `~/.mailrc'.  These
  115. are short mnemonic names which stand for mail addresses or groups of
  116. mail addresses.  Like many other mail programs, Emacs expands aliases
  117. when they occur in the `To', `From', `CC', `BCC', and `Reply-to'
  118. fields, plus their `Resent-' variants.
  119.  
  120.    To define an alias in `~/.mailrc', write a line in the following
  121. format:
  122.  
  123.      alias SHORTADDRESS FULLADDRESSES
  124.  
  125. Here FULLADDRESSES stands for one or more mail addresses for
  126. SHORTADDRESS to expand into.  Separate multiple addresses with spaces;
  127. if an address contains a space, quote the whole address with a pair of
  128. double-quotes.
  129.  
  130.    For instance, to make `maingnu' stand for `gnu@prep.ai.mit.edu' plus
  131. a local address of your own, put in this line:
  132.  
  133.      alias maingnu gnu@prep.ai.mit.edu local-gnu
  134.  
  135.    Emacs also recognizes include commands in `.mailrc' files.  They
  136. look like this:
  137.  
  138.      source FILENAME
  139.  
  140. The file `~/.mailrc' is used primarily by other mail-reading programs;
  141. it can contain various other commands.  Emacs ignores everything in it
  142. except for alias definitions and include commands.
  143.  
  144.    Another way to define a mail alias, within Emacs alone, is with the
  145. `define-mail-alias' command.  It prompts for the alias and then the
  146. full address.  You can use it to define aliases in your `.emacs' file,
  147. like this:
  148.  
  149.      (define-mail-alias "maingnu" "gnu@prep.ai.mit.edu")
  150.  
  151.    `define-mail-alias' records aliases by adding them to a variable
  152. named `mail-aliases'.  If you are comfortable with manipulating Lisp
  153. lists, you can set `mail-aliases' directly.  The initial value of
  154. `mail-aliases' is `t', which means that Emacs should read `.mailrc' to
  155. get the proper value.
  156.  
  157.    You can specify a different file name to use instead of `~/.mailrc'
  158. by setting the variable `mail-personal-alias-file'.
  159.  
  160.    Normally, Emacs expands aliases when you send the message.  If you
  161. like, you can have mail aliases expand as abbrevs, as soon as you type
  162. them in (*note Abbrevs::.).  To enable this feature, execute the
  163. following:
  164.  
  165.      (add-hook 'mail-setup-hook 'mail-abbrevs-setup)
  166.  
  167. This can go in your `.emacs' file.  *Note Hooks::.  If you use this
  168. feature, you must use `define-mail-abbrev' instead of
  169. `define-mail-alias'; the latter does not work with this package.  Note
  170. that the mail abbreviation package uses the variable `mail-abbrevs'
  171. instead of `mail-aliases', and that all alias names are converted to
  172. lower case.
  173.  
  174.    The mail abbreviation package also provides the `C-c C-a'
  175. (`mail-interactive-insert-alias') command, which reads an alias name
  176. (with completion) and inserts its definition at point.  This is useful
  177. when editing the message text itself or a header field such as
  178. `Subject' in which Emacs does not normally expand aliases.
  179.  
  180.    Note that abbrevs expand only if you insert a word-separator
  181. character afterward.  However, you can rebind `C-n' and `M->' to cause
  182. expansion as well.  Here's how to do that:
  183.  
  184.      (define-key mail-mode-map "\C-n" 'mail-abbrev-next-line)
  185.      (define-key mail-mode-map "\M->" 'mail-abbrev-end-of-buffer)
  186.  
  187. 
  188. File: emacs,  Node: Mail Mode,  Next: Distracting NSA,  Prev: Mail Aliases,  Up: Sending Mail
  189.  
  190. Mail Mode
  191. =========
  192.  
  193.    The major mode used in the mail buffer is Mail mode, which is much
  194. like Text mode except that various special commands are provided on the
  195. `C-c' prefix.  These commands all have to do specifically with editing
  196. or sending the message.
  197.  
  198. `C-c C-s'
  199.      Send the message, and leave the mail buffer selected (`mail-send').
  200.  
  201. `C-c C-c'
  202.      Send the message, and select some other buffer
  203.      (`mail-send-and-exit').
  204.  
  205. `C-c C-f C-t'
  206.      Move to the `To' header field, creating one if there is none
  207.      (`mail-to').
  208.  
  209. `C-c C-f C-s'
  210.      Move to the `Subject' header field, creating one if there is none
  211.      (`mail-subject').
  212.  
  213. `C-c C-f C-c'
  214.      Move to the `CC' header field, creating one if there is none
  215.      (`mail-cc').
  216.  
  217. `C-c C-f C-b'
  218.      Move to the `BCC' header field, creating one if there is none
  219.      (`mail-bcc').
  220.  
  221. `C-c C-f C-f'
  222.      Move to the `FCC' header field, creating one if there is none
  223.      (`mail-fcc').
  224.  
  225. `C-c C-t'
  226.      Move to the beginning of the message body text (`mail-text').
  227.  
  228. `C-c C-w'
  229.      Insert the file `~/.signature' at the end of the message text
  230.      (`mail-signature').
  231.  
  232. `C-c C-y'
  233.      Yank the selected message from Rmail (`mail-yank-original').  This
  234.      command does nothing unless your command to start sending a
  235.      message was issued with Rmail.
  236.  
  237. `C-c C-q'
  238.      Fill all paragraphs of yanked old messages, each individually
  239.      (`mail-fill-yanked-message').
  240.  
  241. `M-x ispell-message'
  242.      Do spelling correction on the message text, but not on citations
  243.      from other messages.
  244.  
  245.    There are two ways to send the message.  `C-c C-s' (`mail-send')
  246. sends the message and marks the mail buffer unmodified, but leaves that
  247. buffer selected so that you can modify the message (perhaps with new
  248. recipients) and send it again.  `C-c C-c' (`mail-send-and-exit') sends
  249. and then deletes the window or switches to another buffer.  It puts the
  250. mail buffer at the lowest priority for reselection by default, since
  251. you are finished with using it.  This is the usual way to send the
  252. message.
  253.  
  254.    Mail mode provides special commands for editing the headers and text
  255. of the message before you send it.  There are five commands defined to
  256. move point to particular header fields, all based on the prefix `C-c
  257. C-f' (`C-f' is for "field").  They are `C-c C-f C-t' (`mail-to') to
  258. move to the `To' field, `C-c C-f C-s' (`mail-subject') for the
  259. `Subject' field, `C-c C-f C-c' (`mail-cc') for the `CC' field, `C-c C-f
  260. C-b' (`mail-bcc') for the `BCC' field, and `C-c C-f C-f' (`mail-fcc')
  261. for the `FCC' field.  If the field in question does not exist, these
  262. commands create one.  We provide special motion commands for these
  263. particular fields because they are the fields users most often want to
  264. edit.
  265.  
  266.    `C-c C-t' (`mail-text') moves point to just after the header
  267. separator line--that is, to the beginning of the message body text.
  268.  
  269.    `C-c C-w' (`mail-signature') adds a standard piece text at the end
  270. of the message to say more about who you are.  The text comes from the
  271. file `.signature' in your home directory.  To insert your signature
  272. automatically, set the variable `mail-signature' non-`nil'; then
  273. starting a mail message automatically inserts the contents of your
  274. `.signature' file.  If you want to omit your signature from a
  275. particular message, delete it from the buffer before you send the
  276. message.
  277.  
  278.    When mail sending is invoked from the Rmail mail reader using an
  279. Rmail command, `C-c C-y' can be used inside the mail buffer to insert
  280. the text of the message you are replying to.  Normally it indents each
  281. line of that message four spaces and eliminates most header fields.  A
  282. numeric argument specifies the number of spaces to indent.  An argument
  283. of just `C-u' says not to indent at all and not to eliminate anything.
  284. `C-c C-y' always uses the current message from the Rmail buffer, so you
  285. can insert several old messages by selecting one in Rmail, switching to
  286. `*mail*' and yanking it, then switching back to Rmail to select another.
  287.  
  288.    You can specify the text for `C-c C-y' to insert at the beginning of
  289. each line: set `mail-yank-prefix' to the desired string.  (A value of
  290. `nil' means to use indentation; this is the default.) However, `C-u C-c
  291. C-y' never adds anything at the beginning of the inserted lines,
  292. regardless of the value of `mail-yank-prefix'.
  293.  
  294.    After using `C-c C-y', you can use the command `C-c C-q'
  295. (`mail-fill-yanked-message') to fill the paragraphs of the yanked old
  296. message or messages.  One use of `C-c C-q' fills all such paragraphs,
  297. each one individually.  *Note Filling::.
  298.  
  299.    You can do spelling correction on the message text you have written
  300. with the command `M-x ispell-message'.  If you have yanked an incoming
  301. message into the outgoing draft, this command skips what was yanked,
  302. but it checks the text that you yourself inserted.  (It looks for
  303. indentation or `mail-yank-prefix' to distinguish the cited lines from
  304. your input.)  *Note Spelling::.
  305.  
  306.    Mail mode defines the character `%' as a word separator; this is
  307. helpful for using the word commands to edit mail addresses.
  308.  
  309.    Mail mode is normally used in buffers set up automatically by the
  310. `mail' command and related commands.  However, you can also switch to
  311. Mail mode in a file-visiting buffer.  That is a useful thing to do if
  312. you have saved draft message text in a file.  In a file-visiting buffer,
  313. `C-c C-c' does not clear the modified flag, because only saving the
  314. file should do that.  As a result, you don't get a warning about trying
  315. to send the same message twice.
  316.  
  317.    Turning on Mail mode (which `C-x m' does automatically) runs the
  318. normal hooks `text-mode-hook' and `mail-mode-hook'.  Initializing a new
  319. outgoing message runs the normal hook `mail-setup-hook'; if you want to
  320. add special fields to your mail header or make other changes to the
  321. appearance of the mail buffer, use that hook.  *Note Hooks::.
  322.  
  323.    The main difference between these hooks is just when they are
  324. invoked.  Whenever you type `M-x mail', `mail-mode-hook' runs as soon
  325. as the `*mail*' buffer is created.  Then the `mail-setup' function puts
  326. in the default contents of the buffer.  After these default contents
  327. are inserted, `mail-setup-hook' runs.
  328.  
  329. 
  330. File: emacs,  Node: Distracting NSA,  Prev: Mail Mode,  Up: Sending Mail
  331.  
  332. Distracting the NSA
  333. ===================
  334.  
  335.    `M-x spook' adds a line of randomly chosen keywords to an outgoing
  336. mail message.  The keywords are chosen from a list of words that suggest
  337. you are discussing something subversive.
  338.  
  339.    The idea behind this feature is that the suspicion that the NSA
  340. snoops on all electronic mail messages that contain keywords suggesting
  341. they might be interested.  (The NSA says they don't, but that's what
  342. they *would* say.)  The idea is that if lots of people add suspicious
  343. words to their messages, the NSA will get so busy with spurious input
  344. that they will have to give up reading it all.
  345.  
  346.    Here's how to insert spook keywords automatically whenever you start
  347. entering an outgoing message:
  348.  
  349.      (add-hook 'mail-setup-hook 'spook)
  350.  
  351.    Whether or not this confuses the NSA, it at least amuses people.
  352.  
  353. 
  354. File: emacs,  Node: Rmail,  Next: Dired,  Prev: Sending Mail,  Up: Top
  355.  
  356. Reading Mail with Rmail
  357. ***********************
  358.  
  359.    Rmail is an Emacs subsystem for reading and disposing of mail that
  360. you receive.  Rmail stores mail messages in files called Rmail files.
  361. Reading the message in an Rmail file is done in a special major mode,
  362. Rmail mode, which redefines most letters to run commands for managing
  363. mail.
  364.  
  365. * Menu:
  366.  
  367. * Basic: Rmail Basics.       Basic concepts of Rmail, and simple use.
  368. * Scroll: Rmail Scrolling.   Scrolling through a message.
  369. * Motion: Rmail Motion.      Moving to another message.
  370. * Deletion: Rmail Deletion.  Deleting and expunging messages.
  371. * Inbox: Rmail Inbox.        How mail gets into the Rmail file.
  372. * Files: Rmail Files.        Using multiple Rmail files.
  373. * Output: Rmail Output.         Copying message out to files.
  374. * Labels: Rmail Labels.      Classifying messages by labeling them.
  375. * Reply: Rmail Reply.        Sending replies to messages you are viewing.
  376. * Summary: Rmail Summary.    Summaries show brief info on many messages.
  377. * Sort: Rmail Sorting.       Sorting messages in Rmail.
  378. * Display: Rmail Display.    How Rmail displays a message; customization.
  379. * Editing: Rmail Editing.    Editing message text and headers in Rmail.
  380. * Digest: Rmail Digest.      Extracting the messages from a digest message.
  381. * Out of Rmail::         Converting an Rmail file to mailbox format.
  382. * Rot13: Rmail Rot13.         Reading messages encoded in the rot13 code.
  383.  
  384. 
  385. File: emacs,  Node: Rmail Basics,  Next: Rmail Scrolling,  Up: Rmail
  386.  
  387. Basic Concepts of Rmail
  388. =======================
  389.  
  390.    Using Rmail in the simplest fashion, you have one Rmail file
  391. `~/RMAIL' in which all of your mail is saved.  It is called your
  392. "primary Rmail file".  The command `M-x rmail' reads your primary Rmail
  393. file, merges new mail in from your inboxes, displays the first message
  394. you haven't read yet, and lets you begin reading.
  395.  
  396.    Rmail uses narrowing to hide all but one message in the Rmail file.
  397. The message that is shown is called the "current message".  Rmail
  398. mode's special commands can do such things as delete the current
  399. message, copy it into another file, send a reply, or move to another
  400. message.  You can also create multiple Rmail files and use Rmail to move
  401. messages between them.
  402.  
  403.    Within the Rmail file, messages are normally arranged sequentially in
  404. order of receipt; you can specify other ways to sort them.  Messages are
  405. assigned consecutive integers as their "message numbers".  The number
  406. of the current message is displayed in Rmail's mode line, followed by
  407. the total number of messages in the file.  You can move to a message by
  408. specifying its message number with the `j' key (*note Rmail Motion::.).
  409.  
  410.    Following the usual conventions of Emacs, changes in an Rmail file
  411. become permanent only when the file is saved.  You can save it with `s'
  412. (`rmail-save'), which also expunges deleted messages from the file
  413. first (*note Rmail Deletion::.).  To save the file without expunging,
  414. use `C-x C-s'.  Rmail also saves the Rmail file after merging new mail
  415. from an inbox file (*note Rmail Inbox::.).
  416.  
  417.    You can exit Rmail with `q' (`rmail-quit'); this expunges and saves
  418. the Rmail file and then switches to another buffer.  But there is no
  419. need to `exit' formally.  If you switch from Rmail to editing in other
  420. buffers, and never happen to switch back, you have exited.  (The Rmail
  421. command `b', `rmail-bury', does this for you.)  Just make sure to save
  422. the Rmail file eventually (like any other file you have changed).  `C-x
  423. s' is a good enough way to do this (*note Saving::.).
  424.  
  425. 
  426. File: emacs,  Node: Rmail Scrolling,  Next: Rmail Motion,  Prev: Rmail Basics,  Up: Rmail
  427.  
  428. Scrolling Within a Message
  429. ==========================
  430.  
  431.    When Rmail displays a message that does not fit on the screen, you
  432. must scroll through it to read the rest.  You could do this with `C-v',
  433. `M-v' and `M-<', but in Rmail scrolling is so frequent that it deserves
  434. to be easier to type.
  435.  
  436. `SPC'
  437.      Scroll forward (`scroll-up').
  438.  
  439. `DEL'
  440.      Scroll backward (`scroll-down').
  441.  
  442. `.'
  443.      Scroll to start of message (`rmail-beginning-of-message').
  444.  
  445.    Since the most common thing to do while reading a message is to
  446. scroll through it by screenfuls, Rmail makes SPC and DEL synonyms of
  447. `C-v' (`scroll-up') and `M-v' (`scroll-down')
  448.  
  449.    The command `.' (`rmail-beginning-of-message') scrolls back to the
  450. beginning of the selected message.  This is not quite the same as `M-<':
  451. for one thing, it does not set the mark; for another, it resets the
  452. buffer boundaries to the current message if you have changed them.
  453.  
  454. 
  455. File: emacs,  Node: Rmail Motion,  Next: Rmail Deletion,  Prev: Rmail Scrolling,  Up: Rmail
  456.  
  457. Moving Among Messages
  458. =====================
  459.  
  460.    The most basic thing to do with a message is to read it.  The way to
  461. do this in Rmail is to make the message current.  The usual practice is
  462. to move sequentially through the file, since this is the order of
  463. receipt of messages.  When you enter Rmail, you are positioned at the
  464. first message that you have not yet made current (that is, the first one
  465. that has the `unseen' attribute; *note Rmail Labels::.).  Move forward
  466. to see the other new messages; move backward to reexamine old messages.
  467.  
  468. `n'
  469.      Move to the next nondeleted message, skipping any intervening
  470.      deleted messages (`rmail-next-undeleted-message').
  471.  
  472. `p'
  473.      Move to the previous nondeleted message
  474.      (`rmail-previous-undeleted-message').
  475.  
  476. `M-n'
  477.      Move to the next message, including deleted messages
  478.      (`rmail-next-message').
  479.  
  480. `M-p'
  481.      Move to the previous message, including deleted messages
  482.      (`rmail-previous-message').
  483.  
  484. `j'
  485.      Move to the first message.  With argument N, move to message
  486.      number N (`rmail-show-message').
  487.  
  488. `>'
  489.      Move to the last message (`rmail-last-message').
  490.  
  491. `<'
  492.      Move to the first message (`rmail-first-message').
  493.  
  494. `M-s REGEXP RET'
  495.      Move to the next message containing a match for REGEXP
  496.      (`rmail-search').
  497.  
  498. `- M-s REGEXP RET'
  499.      Move to the previous message containing a match for REGEXP.
  500.  
  501.    `n' and `p' are the usual way of moving among messages in Rmail.
  502. They move through the messages sequentially, but skip over deleted
  503. messages, which is usually what you want to do.  Their command
  504. definitions are named `rmail-next-undeleted-message' and
  505. `rmail-previous-undeleted-message'.  If you do not want to skip deleted
  506. messages--for example, if you want to move to a message to undelete
  507. it--use the variants `M-n' and `M-p' (`rmail-next-message' and
  508. `rmail-previous-message').  A numeric argument to any of these commands
  509. serves as a repeat count.
  510.  
  511.    In Rmail, you can specify a numeric argument by typing just the
  512. digits.  You don't need to type `C-u' first.
  513.  
  514.    The `M-s' (`rmail-search') command is Rmail's version of search.
  515. The usual incremental search command `C-s' works in Rmail, but it
  516. searches only within the current message.  The purpose of `M-s' is to
  517. search for another message.  It reads a regular expression (*note
  518. Regexps::.) nonincrementally, then searches starting at the beginning
  519. of the following message for a match.  It then selects that message.
  520. If REGEXP is empty, `M-s' reuses the regexp used the previous time.
  521.  
  522.    To search backward in the file for another message, give `M-s' a
  523. negative argument.  In Rmail you can do this with `- M-s'.
  524.  
  525.    It is also possible to search for a message based on labels.  *Note
  526. Rmail Labels::.
  527.  
  528.    To move to a message specified by absolute message number, use `j'
  529. (`rmail-show-message') with the message number as argument.  With no
  530. argument, `j' selects the first message.  `<' (`rmail-first-message')
  531. also selects the first message.  `>' (`rmail-last-message') selects the
  532. last message.
  533.  
  534. 
  535. File: emacs,  Node: Rmail Deletion,  Next: Rmail Inbox,  Prev: Rmail Motion,  Up: Rmail
  536.  
  537. Deleting Messages
  538. =================
  539.  
  540.    When you no longer need to keep a message, you can "delete" it.  This
  541. flags it as ignorable, and some Rmail commands pretend it is no longer
  542. present; but it still has its place in the Rmail file, and still has its
  543. message number.
  544.  
  545.    "Expunging" the Rmail file actually removes the deleted messages.
  546. The remaining messages are renumbered consecutively.  Expunging is the
  547. only action that changes the message number of any message, except for
  548. undigestifying (*note Rmail Digest::.).
  549.  
  550. `d'
  551.      Delete the current message, and move to the next nondeleted message
  552.      (`rmail-delete-forward').
  553.  
  554. `C-d'
  555.      Delete the current message, and move to the previous nondeleted
  556.      message (`rmail-delete-backward').
  557.  
  558. `u'
  559.      Undelete the current message, or move back to a deleted message and
  560.      undelete it (`rmail-undelete-previous-message').
  561.  
  562. `x'
  563.      Expunge the Rmail file (`rmail-expunge').
  564.  
  565.    There are two Rmail commands for deleting messages.  Both delete the
  566. current message and select another message.  `d'
  567. (`rmail-delete-forward') moves to the following message, skipping
  568. messages already deleted, while `C-d' (`rmail-delete-backward') moves
  569. to the previous nondeleted message.  If there is no nondeleted message
  570. to move to in the specified direction, the message that was just
  571. deleted remains current.
  572.  
  573.    To make all the deleted messages finally vanish from the Rmail file,
  574. type `x' (`rmail-expunge').  Until you do this, you can still
  575. "undelete" the deleted messages.  The undeletion command, `u'
  576. (`rmail-undelete-previous-message'), is designed to cancel the effect
  577. of a `d' command in most cases.  It undeletes the current message if
  578. the current message is deleted.  Otherwise it moves backward to
  579. previous messages until a deleted message is found, and undeletes that
  580. message.
  581.  
  582.    You can usually undo a `d' with a `u' because the `u' moves back to
  583. and undeletes the message that the `d' deleted.  But this does not work
  584. when the `d' skips a few already-deleted messages that follow the
  585. message being deleted; then the `u' command undeletes the last of the
  586. messages that were skipped.  There is no clean way to avoid this
  587. problem.  However, by repeating the `u' command, you can eventually get
  588. back to the message that you intend to undelete.  You can also select a
  589. particular deleted message with the `M-p' command, then type `u' to
  590. undelete it.
  591.  
  592.    A deleted message has the `deleted' attribute, and as a result
  593. `deleted' appears in the mode line when the current message is deleted.
  594. In fact, deleting or undeleting a message is nothing more than adding
  595. or removing this attribute.  *Note Rmail Labels::.
  596.  
  597. 
  598. File: emacs,  Node: Rmail Inbox,  Next: Rmail Files,  Prev: Rmail Deletion,  Up: Rmail
  599.  
  600. Rmail Files and Inboxes
  601. =======================
  602.  
  603.    The operating system places incoming mail for you in a file that we
  604. call your "inbox".  When you start up Rmail, it runs a C program called
  605. `movemail' to copy the new messages from your inbox into your primary
  606. Rmail file, which also contains other messages saved from previous
  607. Rmail sessions.  It is in this file that you actually read the mail
  608. with Rmail.  This operation is called "getting new mail".  You can get
  609. new mail at any time in Rmail by typing `g'.
  610.  
  611.    The variable `rmail-primary-inbox-list' contains a list of the files
  612. which are inboxes for your primary Rmail file.  If you don't set this
  613. variable explicitly, it is initialized from the `MAIL' environment
  614. variable, or, as a last resort, set to `nil', which means to use the
  615. default inbox.  The default inbox is `/var/mail/USERNAME',
  616. `/usr/spool/mail/USERNAME', or `/usr/mail/USERNAME', depending on your
  617. operating system.
  618.  
  619.    Some sites use a method called POP for accessing users' inbox data
  620. instead of storing the data in inbox files.  `movemail' can work with
  621. POP if you compile it with the macro `MAIL_USE_POP' defined, and then
  622. install it setuid to `root'.  It is safe to install `movemail' in this
  623. way.
  624.  
  625.    Assuming you have compiled and installed `movemail' appropriately,
  626. you can specify a POP inbox with a "file name" of the form
  627. `po:USERNAME'.  `movemail' handles such a name by opening a connection
  628. to the POP server.  The `MAILHOST' environment variable specifies the
  629. machine to look for the server on.
  630.  
  631.    There are three reason for having separate Rmail files and inboxes.
  632.  
  633.   1. The inbox file format varies between operating systems and
  634.      according to the other mail software in use.  Only one part of
  635.      Rmail needs to know about the alternatives, and it need only
  636.      understand how to convert all of them to Rmail's own format.
  637.  
  638.   2. The inbox file format usually doesn't provide a place for all the
  639.      information that Rmail records.
  640.  
  641.   3. It is very cumbersome to access an inbox file without danger of
  642.      losing mail, because it is necessary to interlock with mail
  643.      delivery.  Moreover, different operating systems use different
  644.      interlocking techniques.  The strategy of moving mail out of the
  645.      inbox once and for all into a separate Rmail file avoids the need
  646.      for interlocking in all the rest of Rmail, since only Rmail
  647.      operates on the Rmail file.
  648.  
  649.    When getting new mail, Rmail first copies the new mail from the inbox
  650. file to the Rmail file; then it saves the Rmail file; then it truncates
  651. the inbox file.  This way, a system crash may cause duplication of mail
  652. between the inbox and the Rmail file, but cannot lose mail.
  653.  
  654.    When `movemail' copies mail from an inbox in the system's mailer
  655. directory, it actually puts it in an intermediate file
  656. `~/.newmail-INBOXNAME'.  Once it finishes, Rmail reads that file,
  657. merges the new mail, saves the Rmail file, and only then deletes the
  658. intermediate file.  If there is a crash at the wrong time, this file
  659. continues to exist and Rmail will use it again the next time it gets new
  660. mail from that inbox.
  661.  
  662. 
  663. File: emacs,  Node: Rmail Files,  Next: Rmail Output,  Prev: Rmail Inbox,  Up: Rmail
  664.  
  665. Multiple Rmail Files
  666. ====================
  667.  
  668.    Rmail operates by default on your "primary Rmail file", which is
  669. named `~/RMAIL' and receives your incoming mail from your system inbox
  670. file.  But you can also have other Rmail files and edit them with
  671. Rmail.  These files can receive mail through their own inboxes, or you
  672. can move messages into them with explicit Rmail commands (*note Rmail
  673. Output::.).
  674.  
  675. `i FILE RET'
  676.      Read FILE into Emacs and run Rmail on it (`rmail-input').
  677.  
  678. `M-x set-rmail-inbox-list RET FILES RET'
  679.      Specify inbox file names for current Rmail file to get mail from.
  680.  
  681. `g'
  682.      Merge new mail from current Rmail file's inboxes
  683.      (`rmail-get-new-mail').
  684.  
  685. `C-u g FILE RET'
  686.      Merge new mail from inbox file FILE.
  687.  
  688.    To run Rmail on a file other than your primary Rmail file, you may
  689. use the `i' (`rmail-input') command in Rmail.  This visits the file in
  690. Rmail mode.  You can use `M-x rmail-input' even when not in Rmail.
  691.  
  692.    The file you read with `i' should normally be a valid Rmail file.
  693. If it is not, Rmail tries to decompose it into a stream of messages in
  694. various known formats.  If it succeeds, it converts the whole file to an
  695. Rmail file.  If you specify a file name that doesn't exist, `i'
  696. initializes a new buffer for creating a new Rmail file.
  697.  
  698.    You can also select an Rmail file from a menu.  Choose first the menu
  699. bar Classify item, then from the Classify menu choose the Input Rmail
  700. File item; then choose the Rmail file you want.  The variables
  701. `rmail-secondary-file-directory' and `rmail-secondary-file-regexp'
  702. specify which files to offer in the menu: the first variable says which
  703. directory to find them in; the second says which files in that
  704. directory to offer (all those that match the regular expression).
  705. These variables also apply to choosing a file for output (*note Rmail
  706. Output::.).
  707.  
  708.    Each Rmail file can contain a list of inbox file names; you can
  709. specify this list with `M-x set-rmail-inbox-list RET FILES RET'.  The
  710. argument can contain any number of file names, separated by commas.  It
  711. can also be empty, which specifies that this file should have no
  712. inboxes.  Once a list of inboxes is specified, the Rmail file remembers
  713. it permanently until you specify a different list.
  714.  
  715.    As a special exception, if your primary Rmail file does not specify
  716. any inbox files, it uses your standard system inbox.
  717.  
  718.    The `g' command (`rmail-get-new-mail') merges mail into the current
  719. Rmail file from its specified inboxes.  If the Rmail file has no
  720. inboxes, `g' does nothing.  The command `M-x rmail' also merges new
  721. mail into your primary Rmail file.
  722.  
  723.    To merge mail from a file that is not the usual inbox, give the `g'
  724. key a numeric argument, as in `C-u g'.  Then it reads a file name and
  725. merges mail from that file.  The inbox file is not deleted or changed
  726. in any way when `g' with an argument is used.  This is, therefore, a
  727. general way of merging one file of messages into another.
  728.  
  729. 
  730. File: emacs,  Node: Rmail Output,  Next: Rmail Labels,  Prev: Rmail Files,  Up: Rmail
  731.  
  732. Copying Messages Out to Files
  733. =============================
  734.  
  735.    These commands copy messages from an Rmail file into another file.
  736.  
  737. `o FILE RET'
  738.      Append a copy of the current message to the file FILE, using Rmail
  739.      file format by default (`rmail-output-to-rmail-file').
  740.  
  741. `C-o FILE RET'
  742.      Append a copy of the current message to the file FILE, using
  743.      system inbox file format by default (`rmail-output').
  744.  
  745.    The commands `o' and `C-o' copy the current message into a specified
  746. file.  This file may be an Rmail file or it may be in system inbox
  747. format; the output commands ascertain the file's format and write the
  748. copied message in that format.
  749.  
  750.    The `o' and `C-o' commands differ in two ways: each has its own
  751. separate default file name, and each specifies a choice of format to
  752. use when the file does not already exist.  The `o' command uses Rmail
  753. format when it creates a new file, while `C-o' uses system inbox format
  754. for a new file.  The default file name for `o' is the file name used
  755. last with `o', and the default file name for `C-o' is the file name
  756. used last with `C-o'.
  757.  
  758.    If the output file is an Rmail file currently visited in an Emacs
  759. buffer, the output commands copy the message into that buffer.  It is
  760. up to you to save the buffer eventually in its file.
  761.  
  762.    You can also output a message to an Rmail file chosen with a menu.
  763. Choose first the menu bar Classify item, then from the Classify menu
  764. choose the Output Rmail Menu item; then choose the Rmail file you want.
  765. This outputs the current message to that file, like the `o' command.
  766. The variables `rmail-secondary-file-directory' and
  767. `rmail-secondary-file-regexp' specify which files to offer in the menu:
  768. the first variable says which directory to find them in; the second
  769. says which files in that directory to offer (all those that match the
  770. regular expression).
  771.  
  772.    Copying a message gives the original copy of the message the `filed'
  773. attribute, so that `filed' appears in the mode line when such a message
  774. is current.  If you like to keep just a single copy of every mail
  775. message, set the variable `rmail-delete-after-output' to `t'; then the
  776. `o' and `C-o' commands delete the original message after copying it.
  777. (You can undelete the original afterward if you wish.)
  778.  
  779.    Copying messages into files in system inbox format uses the header
  780. fields that are displayed in Rmail at the time.  Thus, if you use the
  781. `t' command to view the entire header and then copy the message, the
  782. entire header is copied.  *Note Rmail Display::.
  783.  
  784.    The variable `rmail-output-file-alist' lets you specify intelligent
  785. defaults for the output file, based on the contents of the current
  786. message.  The value should be a list whose elements have this form:
  787.  
  788.      (REGEXP . NAME-EXP)
  789.  
  790. If there's a match for REGEXP in the current message, then the default
  791. file name for output is NAME-EXP.  If multiple elements match the
  792. message, the first matching element decides the default file name.  The
  793. subexpression NAME-EXP may be a string constant giving the file name to
  794. use, or more generally it may be any Lisp expression that returns a
  795. file name as a string.  `rmail-output-file-alist' applies to both `o'
  796. and `C-o'.
  797.  
  798. 
  799. File: emacs,  Node: Rmail Labels,  Next: Rmail Reply,  Prev: Rmail Output,  Up: Rmail
  800.  
  801. Labels
  802. ======
  803.  
  804.    Each message can have various "labels" assigned to it as a means of
  805. classification.  Each label has a name; different names are different
  806. labels.  Any given label is either present or absent on a particular
  807. message.  A few label names have standard meanings and are given to
  808. messages automatically by Rmail when appropriate; these special labels
  809. are called "attributes".  All other labels are assigned only by users.
  810.  
  811. `a LABEL RET'
  812.      Assign the label LABEL to the current message (`rmail-add-label').
  813.  
  814. `k LABEL RET'
  815.      Remove the label LABEL from the current message
  816.      (`rmail-kill-label').
  817.  
  818. `C-M-n LABELS RET'
  819.      Move to the next message that has one of the labels LABELS
  820.      (`rmail-next-labeled-message').
  821.  
  822. `C-M-p LABELS RET'
  823.      Move to the previous message that has one of the labels LABELS
  824.      (`rmail-previous-labeled-message').
  825.  
  826. `C-M-l LABELS RET'
  827.      Make a summary of all messages containing any of the labels LABELS
  828.      (`rmail-summary-by-labels').
  829.  
  830.    The `a' (`rmail-add-label') and `k' (`rmail-kill-label') commands
  831. allow you to assign or remove any label on the current message.  If the
  832. LABEL argument is empty, it means to assign or remove the same label
  833. most recently assigned or removed.
  834.  
  835.    Once you have given messages labels to classify them as you wish,
  836. there are two ways to use the labels: in moving and in summaries.
  837.  
  838.    The command `C-M-n LABELS RET' (`rmail-next-labeled-message') moves
  839. to the next message that has one of the labels LABELS.  The argument
  840. LABELS specifies one or more label names, separated by commas.  `C-M-p'
  841. (`rmail-previous-labeled-message') is similar, but moves backwards to
  842. previous messages.  A numeric argument to either command serves as a
  843. repeat count.
  844.  
  845.    The command `C-M-l LABELS RET' (`rmail-summary-by-labels') displays
  846. a summary containing only the messages that have at least one of a
  847. specified set of messages.  The argument LABELS is one or more label
  848. names, separated by commas.  *Note Rmail Summary::, for information on
  849. summaries.
  850.  
  851.    If the LABELS argument to `C-M-n', `C-M-p' or `C-M-l' is empty, it
  852. means to use the last set of labels specified for any of these commands.
  853.  
  854.    Some labels such as `deleted' and `filed' have built-in meanings and
  855. are assigned to or removed from messages automatically at appropriate
  856. times; these labels are called "attributes".  Here is a list of Rmail
  857. attributes:
  858.  
  859. `unseen'
  860.      Means the message has never been current.  Assigned to messages
  861.      when they come from an inbox file, and removed when a message is
  862.      made current.  When you start Rmail, it initially shows the first
  863.      message that has this attribute.
  864.  
  865. `deleted'
  866.      Means the message is deleted.  Assigned by deletion commands and
  867.      removed by undeletion commands (*note Rmail Deletion::.).
  868.  
  869. `filed'
  870.      Means the message has been copied to some other file.  Assigned by
  871.      the file output commands (*note Rmail Files::.).
  872.  
  873. `answered'
  874.      Means you have mailed an answer to the message.  Assigned by the
  875.      `r' command (`rmail-reply').  *Note Rmail Reply::.
  876.  
  877. `forwarded'
  878.      Means you have forwarded the message.  Assigned by the `f' command
  879.      (`rmail-forward').  *Note Rmail Reply::.
  880.  
  881. `edited'
  882.      Means you have edited the text of the message within Rmail.  *Note
  883.      Rmail Editing::.
  884.  
  885. `resent'
  886.      Means you have resent the message.  Assigned by the command `M-x
  887.      rmail-resend'.  *Note Rmail Reply::.
  888.  
  889.    All other labels are assigned or removed only by the user, and have
  890. no standard meaning.
  891.  
  892. 
  893. File: emacs,  Node: Rmail Reply,  Next: Rmail Summary,  Prev: Rmail Labels,  Up: Rmail
  894.  
  895. Sending Replies
  896. ===============
  897.  
  898.    Rmail has several commands that use Mail mode to send outgoing mail.
  899. *Note Sending Mail::, for information on using Mail mode.  What are
  900. documented here are the special commands of Rmail for entering Mail
  901. mode.  Note that the usual keys for sending mail--`C-x m', `C-x 4 m',
  902. and `C-x 5 m'--are available in Rmail mode and work just as they
  903. usually do.
  904.  
  905. `m'
  906.      Send a message (`rmail-mail').
  907.  
  908. `c'
  909.      Continue editing already started outgoing message
  910.      (`rmail-continue').
  911.  
  912. `r'
  913.      Send a reply to the current Rmail message (`rmail-reply').
  914.  
  915. `f'
  916.      Forward current message to other users (`rmail-forward').
  917.  
  918. `C-u f'
  919.      Resend the current message to other users (`rmail-resend').
  920.  
  921. `M-m'
  922.      Try sending a bounced message a second time
  923.      (`rmail-retry-failure').
  924.  
  925.    The most common reason to send a message while in Rmail is to reply
  926. to the message you are reading.  To do this, type `r' (`rmail-reply').
  927. This displays the `*mail*' buffer in another window, much like `C-x 4
  928. m', but preinitializes the `Subject', `To', `CC' and `In-reply-to'
  929. header fields based on the message you are replying to.  The `To' field
  930. starts out as the address of the person who sent the message you
  931. received, and the `CC' field starts out with all the other recipients
  932. of that message.
  933.  
  934.    You can exclude certain recipients from being placed automatically in
  935. the `CC', using the variable `rmail-dont-reply-to-names'.  Its value
  936. should be a regular expression (as a string); any recipient that the
  937. regular expression matches, is excluded from the `CC' field.  The
  938. default value matches your own name, and any name starting with
  939. `info-'.  (Those names are excluded because there is a convention of
  940. using them for large mailing lists to broadcast announcements.)
  941.  
  942.    To omit the `CC' field completely for a particular reply, enter the
  943. reply command with a numeric argument: `C-u r' or `1 r'.
  944.  
  945.    Once the `*mail*' buffer has been initialized, editing and sending
  946. the mail goes as usual (*note Sending Mail::.).  You can edit the
  947. presupplied header fields if they are not right for you.  You can also
  948. use the commands of Mail mode, including `C-c C-y' to yank in the
  949. message that you are replying to, and `C-c C-q' to fill what was thus
  950. yanked.  You can also switch to the Rmail buffer, select a different
  951. message, switch back, and yank the new current message.
  952.  
  953.    Sometimes a message does not reach its destination.  Mailers usually
  954. send the failed message back to you, enclosed in a "failure message".
  955. The Rmail command `M-m' (`rmail-retry-failure') prepares to send the
  956. same message a second time: it sets up a `*mail*' buffer with the same
  957. text and header fields as before.  If you type `C-c C-c' right away,
  958. you send the message again exactly the same as the first time.
  959. Alternatively, you can edit the text or headers and then send it.  The
  960. variable `rmail-retry-ignored-headers', in the same format as
  961. `rmail-ignored-headers' (*note Rmail Display::.), controls which
  962. headers are stripped from the failed message when retrying it; it
  963. defaults to nil.
  964.  
  965.    Another frequent reason to send mail in Rmail is to "forward" the
  966. current message to other users.  `f' (`rmail-forward') makes this easy
  967. by preinitializing the `*mail*' buffer with the current message as the
  968. text, and a subject designating a forwarded message.  All you have to
  969. do is fill in the recipients and send.  When you forward a message,
  970. recipients get a message which is "from" you, and which has the
  971. original message in its contents.
  972.  
  973.    "Resending" is an alternative similar to forwarding; the difference
  974. is that resending sends a message that is "from" the original sender,
  975. just as it reached you--with a few added header fields `Resent-from'
  976. and `Resent-to' to indicate that it came via you.  To resend a message
  977. in Rmail, use `C-u f'.  (`f' runs `rmail-forward', which is programmed
  978. to invoke `rmail-resend' if you provide a numeric argument.)
  979.  
  980.    The `m' (`rmail-mail') command is used to start editing an outgoing
  981. message that is not a reply.  It leaves the header fields empty.  Its
  982. only difference from `C-x 4 m' is that it makes the Rmail buffer
  983. accessible for `C-c C-y', just as `r' does.  Thus, `m' can be used to
  984. reply to or forward a message; it can do anything `r' or `f' can do.
  985.  
  986.    The `c' (`rmail-continue') command resumes editing the `*mail*'
  987. buffer, to finish editing an outgoing message you were already
  988. composing, or to alter a message you have sent.
  989.  
  990.    If you set the variable `rmail-mail-new-frame' to a non-`nil' value,
  991. then all the Rmail commands to start sending a message create a new
  992. frame to edit it in.  This frame is deleted when you send the message,
  993. or when you use the `Don't Send' item in the `Mail' menu.
  994.  
  995. 
  996. File: emacs,  Node: Rmail Summary,  Next: Rmail Sorting,  Prev: Rmail Reply,  Up: Rmail
  997.  
  998. Summaries
  999. =========
  1000.  
  1001.    A "summary" is a buffer containing one line per message to give you
  1002. an overview of the mail in an Rmail file.  Each line shows the message
  1003. number, the sender, the labels, and the subject.  Almost all Rmail
  1004. commands are valid in the summary buffer also; these apply to the
  1005. message described by the current line of the summary.  Moving point in
  1006. the summary buffer selects messages as you move to their summary lines.
  1007.  
  1008.    A summary buffer applies to a single Rmail file only; if you are
  1009. editing multiple Rmail files, each one can have its own summary buffer.
  1010. The summary buffer name is made by appending `-summary' to the Rmail
  1011. buffer's name.  Normally only one summary buffer is displayed at a time.
  1012.  
  1013. * Menu:
  1014.  
  1015. * Rmail Make Summary::         Making various sorts of summaries.
  1016. * Rmail Summary Edit::         Manipulating messages from the summary.
  1017.  
  1018. 
  1019. File: emacs,  Node: Rmail Make Summary,  Next: Rmail Summary Edit,  Up: Rmail Summary
  1020.  
  1021. Making Summaries
  1022. ----------------
  1023.  
  1024.    Here are the commands to create a summary for the current Rmail file.
  1025. Once the Rmail file has a summary buffer, changes in the Rmail file
  1026. (such as deleting or expunging messages, and getting new mail)
  1027. automatically update the summary.
  1028.  
  1029. `h'
  1030. `C-M-h'
  1031.      Summarize all messages (`rmail-summary').
  1032.  
  1033. `l LABELS RET'
  1034. `C-M-l LABELS RET'
  1035.      Summarize message that have one or more of the specified labels
  1036.      (`rmail-summary-by-labels').
  1037.  
  1038. `C-M-r RCPTS RET'
  1039.      Summarize messages that have one or more of the specified
  1040.      recipients (`rmail-summary-by-recipients').
  1041.  
  1042. `C-M-t TOPIC RET'
  1043.      Summarize messages that have a match for the specified regexp
  1044.      TOPIC in their subjects (`rmail-summary-by-topic').
  1045.  
  1046.    The `h' or `C-M-h' (`rmail-summary') command fills the summary buffer
  1047. for the current Rmail file with a summary of all the messages in the
  1048. file.  It then displays and selects the summary buffer in another
  1049. window.
  1050.  
  1051.    `C-M-l LABELS RET' (`rmail-summary-by-labels') makes a partial
  1052. summary mentioning only the messages that have one or more of the
  1053. labels LABELS.  LABELS should contain label names separated by commas.
  1054.  
  1055.    `C-M-r RCPTS RET' (`rmail-summary-by-recipients') makes a partial
  1056. summary mentioning only the messages that have one or more of the
  1057. recipients RCPTS.  RCPTS should contain mailing addresses separated by
  1058. commas.
  1059.  
  1060.    `C-M-t TOPIC RET' (`rmail-summary-by-topic') makes a partial summary
  1061. mentioning only the messages whose subjects have a match for the
  1062. regular expression TOPIC.
  1063.  
  1064.    Note that there is only one summary buffer for any Rmail file;
  1065. making one kind of summary discards any previously made summary.
  1066.  
  1067.    The variable `rmail-summary-window-size' says how many lines to use
  1068. for the summary window.
  1069.  
  1070. 
  1071. File: emacs,  Node: Rmail Summary Edit,  Prev: Rmail Make Summary,  Up: Rmail Summary
  1072.  
  1073. Editing in Summaries
  1074. --------------------
  1075.  
  1076.    You can use the Rmail summary buffer to do almost anything you can do
  1077. in the Rmail buffer itself.  In fact, once you have a summary buffer,
  1078. there's no need to switch back to the Rmail buffer.
  1079.  
  1080.    You can select and display various messages in the Rmail buffer, from
  1081. the summary buffer, just by moving point in the summary buffer to
  1082. different lines.  It doesn't matter what Emacs command you use to move
  1083. point; whichever line point is on at the end of the command, that
  1084. message is selected in the Rmail buffer.
  1085.  
  1086.    Almost all Rmail commands work in the summary buffer as well as in
  1087. the Rmail buffer.  Thus, `d' in the summary buffer deletes the current
  1088. message, `u' undeletes, and `x' expunges.  `o' and `C-o' output the
  1089. current message to a file; `r' starts a reply to it.  You can scroll
  1090. the current message while remaining in the summary buffer using SPC and
  1091. DEL.
  1092.  
  1093.    The Rmail commands to move between messages also work in the summary
  1094. buffer, but with a twist: they move through the set of messages included
  1095. in the summary.  They also ensure the Rmail buffer appears on the screen
  1096. (unlike cursor motion commands, which update the contents of the Rmail
  1097. buffer but don't display it in a window unless it already appears).
  1098. Here is a list of these commands:
  1099.  
  1100. `n'
  1101.      Move to next line, skipping lines saying `deleted', and select its
  1102.      message.
  1103.  
  1104. `p'
  1105.      Move to previous line, skipping lines saying `deleted', and select
  1106.      its message.
  1107.  
  1108. `M-n'
  1109.      Move to next line and select its message.
  1110.  
  1111. `M-p'
  1112.      Move to previous line and select its message.
  1113.  
  1114. `>'
  1115.      Move to the last line, and select its message.
  1116.  
  1117. `<'
  1118.      Move to the first line, and select its message.
  1119.  
  1120. `M-s PATTERN RET'
  1121.      Search through messages for PATTERN starting with the current
  1122.      message; select the message found, and move point in the summary
  1123.      buffer to that message's line.
  1124.  
  1125.    Deletion, undeletion, and getting new mail, and even selection of a
  1126. different message all update the summary buffer when you do them in the
  1127. Rmail buffer.  If the variable `rmail-redisplay-summary' is non-`nil',
  1128. these actions also bring the summary buffer back onto the screen.
  1129.  
  1130.    When you are finished using the summary, type `w'
  1131. (`rmail-summary-wipe') to delete the summary buffer's window.  You can
  1132. also exit Rmail while in the summary: `q' (`rmail-summary-quit')
  1133. deletes the summary window, then exits from Rmail by saving the Rmail
  1134. file and switching to another buffer.
  1135.  
  1136.